package com.wzdigit.wms.raw.mapper.gdn;

import com.wzdigit.framework.orm.mybatis.MyBatisRepository;
import com.wzdigit.wms.raw.client.response.gdn.picktask.CancelPickResponse;
import com.wzdigit.wms.raw.client.response.gdn.picktask.PickAllQty;
import org.apache.ibatis.annotations.Param;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * Created by zyf on 2021/8/4 19:51
 */
@MyBatisRepository
public interface PickTaskMapper {
    List<CancelPickResponse> selectCancelPickInfo(@Param("gdnHeaderId")Long gdnHeaderId,
                                                  @Param("skuId")Integer skuId,
                                                  @Param("goodsSn")String  goodsSn);

    PickAllQty selectAllQty(@Param("gdnHeaderId")Long gdnHeaderId);

    void updateGdnHeaderStatus(@Param("gdnHeaderId") Long gdnHeaderId,@Param("status") Integer status);

    void updateGdnDtlStatus(@Param("gdnDtlId") BigDecimal gdnDtlId,@Param("status") Integer status,
                            @Param("qty") BigDecimal qty);

    void updateGdnDtlQty(@Param("gdnDtlId") BigDecimal gdnDtlId, @Param("qty") BigDecimal qty);

    List<Integer> selectGdnDtlGoodsStatus(@Param("gdnHeaderId")Long gdnHeaderId, @Param("goodsSn")String  goodsSn);

    int updateGoodsLoc(@Param("goodsIds") List<Integer> goodsIds);

    //查询源单据报废单下的所有条码
    List<String> selectDataSourceSn(@Param("transferNo")String transferNo);


    List<String> selectGoodsExitFromAsn(@Param("asnNo") String asnNo,@Param("skuId") Integer skuId, @Param("sn") String sn);

    int updateDtlWhs(@Param("ids") List<Long> ids,@Param("whsId") Integer whsId,
                     @Param("loginName") String loginName,@Param("modifyDate") Date modifyDate);

}
